Пример скрипта.

##3d.xyz { 1,2,3 }
;;operators for 3d.xyz
..
@@AIagent
тут пишем модель(several variants) и параметры активации. При активации агент call idProc
..
##name { vasyan }
===================================end script

Для даты и poolList allocmem for each char без даты в фасм bss section.
генератор преобразует в idProc(is dll mozno toze) , то есть есть прока которой даётся data 1.0,2.0,3.0
3d.xyz=10 idProc i dw time rept this proc

dw 10,3
dd 1.0,2.0,3.0

algorithm:
1)читаем текстовый скрипт и парсим в дату.
Потом уже постоянно для каждого персонажа:
if [time rept] >0 than dec [time rept] and call idProc
if [time rept]=0 than check all ai agents.
if ai agent activated than set idProc and time rept.